﻿using Cofe.Core.Actions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace Cofe.Core.Actions
{
    public interface ITransferManager : ICofeService
    {
        ITransferHelper[] TransferHelpers { get; set; }

        Task<ICofeSystemInfo> RenameAsync(ICofeSystemInfo entry, ICofeDirectoryInfo fromm,
            string newName, IProgress<ProgressEventArgs> progress, CancellationToken cts);        
        Task<ICofeSystemInfo[]> TransferAsync(TransferMode transferMode, ICofeSystemInfo[] entries, ICofeDirectoryInfo fromm,
            ICofeDirectoryInfo too, IProgress<ProgressEventArgs> progress, CancellationToken cts);        
    }
}
